home *** CD-ROM | disk | FTP | other *** search
/ Aminet 37 / Aminet 37 (2000)(Schatztruhe)[!][Jun 2000].iso / Aminet / dev / lang / sofa.lha / sofa / smalleiffel / lib_std / time_in_french.e < prev    next >
Text File  |  2000-03-25  |  4KB  |  164 lines

  1. -- This file is  free  software, which  comes  along  with  SmallEiffel. This
  2. -- software  is  distributed  in the hope that it will be useful, but WITHOUT 
  3. -- ANY  WARRANTY;  without  even  the  implied warranty of MERCHANTABILITY or
  4. -- FITNESS  FOR A PARTICULAR PURPOSE. You can modify it as you want, provided
  5. -- this header is kept unaltered, and a notification of the changes is added.
  6. -- You  are  allowed  to  redistribute  it and sell it, alone or as a part of 
  7. -- another product.
  8. --          Copyright (C) 1994-98 LORIA - UHP - CRIN - INRIA - FRANCE
  9. --            Dominique COLNET and Suzanne COLLIN - colnet@loria.fr 
  10. --                       http://SmallEiffel.loria.fr
  11. --
  12. expanded class TIME_IN_FRENCH
  13. --
  14. -- NOTE: THIS IS AN ALPHA VERSION. THIS CLASS IS NOT STABLE AT ALL AND 
  15. -- MIGHT EVEN CHANGE COMPLETELY IN THE NEXT RELEASE !
  16. -- 
  17. --
  18. -- The French format class for BASIC_TIME.
  19. --
  20.  
  21. inherit TIME_IN_SOME_LANGUAGE;
  22.    
  23. feature
  24.    
  25.    day_in(buffer: STRING) is
  26.          -- According to the current `short_mode', append in the `buffer' 
  27.          -- the name of the day.
  28.       local
  29.          s: STRING;
  30.       do
  31.          if short_mode then
  32.             inspect
  33.                basic_time.week_day
  34.             when 0 then
  35.                s := "Dim";
  36.             when 1 then
  37.                s := "Lun";
  38.             when 2 then
  39.                s := "Mar";
  40.             when 3 then
  41.                s := "Mer";
  42.             when 4 then
  43.                s := "Jeu";
  44.             when 5 then
  45.                s := "Ven";
  46.             when 6 then
  47.                s := "Sam";
  48.             end;
  49.          else
  50.             inspect
  51.                basic_time.week_day
  52.             when 0 then
  53.                s := "Dimanche";
  54.             when 1 then
  55.                s := "Lundi";
  56.             when 2 then
  57.                s := "Mardi";
  58.             when 3 then
  59.                s := "Mercredi";
  60.             when 4 then
  61.                s := "Jeudi";
  62.             when 5 then
  63.                s := "Vendredi";
  64.             when 6 then
  65.                s := "Samedi";
  66.             end;
  67.          end;
  68.          buffer.append(s);
  69.       end;
  70.  
  71.    month_in(buffer: STRING) is
  72.          -- According to the current `short_mode', append in the `buffer' 
  73.          -- the name of the day.
  74.       local
  75.          s: STRING;
  76.       do
  77.          if short_mode then
  78.             inspect
  79.                basic_time.month
  80.             when 1 then
  81.                s := "Jan";
  82.             when 2 then
  83.                s := "Fev";
  84.             when 3 then
  85.                s := "Mar";
  86.             when 4 then
  87.                s := "Avr";
  88.             when 5 then
  89.                s := "Mai";
  90.             when 6 then
  91.                s := "Juin";
  92.             when 7 then
  93.                s := "Juil"
  94.             when 8 then
  95.                s := "Aout"
  96.             when 9 then
  97.                s := "Sept"
  98.             when 10 then
  99.                s := "Oct";
  100.             when 11 then
  101.                s := "Nov";
  102.             when 12 then
  103.                s := "Dec";
  104.             end;
  105.          else
  106.             inspect
  107.                basic_time.month
  108.             when 1 then
  109.                s := "Janvier";
  110.             when 2 then
  111.                s := "Fevrier";
  112.             when 3 then
  113.                s := "Mars";
  114.             when 4 then
  115.                s := "Avril";
  116.             when 5 then
  117.                s := "Mai";
  118.             when 6 then
  119.                s := "Juin";
  120.             when 7 then
  121.                s := "Juillet"
  122.             when 8 then
  123.                s := "Aout"
  124.             when 9 then
  125.                s := "Septembre"
  126.             when 10 then
  127.                s := "Octobre";
  128.             when 11 then
  129.                s := "Novembre";
  130.             when 12 then
  131.                s := "Decembre";
  132.             end;
  133.          end;
  134.          buffer.append(s);
  135.       end;
  136.  
  137. feature
  138.  
  139.    append_in(buffer: STRING) is
  140.       do
  141.          day_in(buffer);
  142.          buffer.extend(' ');
  143.          basic_time.day.append_in(buffer);
  144.          buffer.extend(' ');
  145.          month_in(buffer);
  146.          buffer.extend(' ');
  147.          if short_mode then
  148.             (basic_time.year \\ 100).append_in(buffer);
  149.          else
  150.             basic_time.year.append_in(buffer);
  151.          end;
  152.          buffer.extend(' ');
  153.          basic_time.hour.append_in(buffer);
  154.          buffer.extend('h');
  155.          basic_time.minute.append_in(buffer);
  156.          buffer.extend('m');
  157.          if not short_mode then
  158.             basic_time.second.append_in(buffer);
  159.             buffer.extend('s');
  160.          end;
  161.       end;
  162.    
  163. end
  164.